//
// Created by 党清浩 on 2021/10/22.
//


#include<stdio.h>

int c(int x, int y);

int main() {
    int i, j, n = 0;
    /*控制输入正确的值以保证屏幕显示的图形正确*/
    printf("Please input the value of n(n>=0):\n");
    scanf("%d", &n);
    /*控制输出N行*/
    for (i = 0; i < n; ++i) {
        /*控制输出第i行前面的空格*/
        for (j = 0; j < 2 * n - 2 * i; ++j) {
            printf(" ");
        }
        /*输出第i行的第j个值*/
        for (j = 0; j < i + 1; ++j) {
            printf("%-4d", c(i, j));
        }
        printf("\n");
    }
}

int c(int x, int y) {
    int z;
    /*若为x行的第1或第x+1列，则输出1*/
    if ((y == 0) || (y == x)) {
        return 1;
    }
    /*否则，其值为前一行中第y-1列与第y列值之和*/
    z = c(x - 1, y - 1) + c(x - 1, y);
    return z;
}